
#include "image_source.h"

static lv_img_dsc_t *lv_img_table[UI_IMG_MAX_NUM];

//图片与文件的映射总表
img_hash_t Image_Hash_Table[UI_IMG_MAX_NUM];

/* LVGL 图片变量(相当于已加载至 SDRAM)*/
lv_img_dsc_t GIF_Loading[LOADING_GIF_SIZE]; //开机 LOGO 动画
lv_img_dsc_t IMG_Wallpaper;                 //背景图
lv_img_dsc_t Commit_Icon[2];                //公共图标 Home / Back 键
lv_img_dsc_t Menu_Main[5];                  //主菜单- ICON
lv_img_dsc_t Menu_M0[6];                    //一级菜单-M0- ICON
lv_img_dsc_t Menu_M4[2];                    //一级菜单-M1- ICON
lv_img_dsc_t Menu_PP_Icon[3];               //一级菜单-图片演示- ICON

lv_img_dsc_t Full_Scr_Img[FULL_SCR_IMG_SIZE]; //全屏刷新整图-测试
lv_img_dsc_t GIF_PD[PD_GIF_SIZE];             //一级菜单-产品应用- GIF 素材
lv_img_dsc_t GIF_PP[PP_GIF_SIZE];             //一级菜单-图片演示- GIF 素材

// lv_img_dsc_t GIF_M0_160[M0_GIF_160_SIZE];    //显示页-160
lv_img_dsc_t GIF_M0_181[M0_GIF_181_SIZE];     //显示页-181
lv_img_dsc_t GIF_M0_190[M0_GIF_190_SIZE];     //显示页-190
lv_img_dsc_t GIF_M0_201[M0_GIF_201_SIZE];     //显示页-201
// lv_img_dsc_t GIF_M0_220[M0_GIF_220_SIZE];    //显示页-220
lv_img_dsc_t GIF_M0_260[M0_GIF_260_SIZE]; //显示页-260
lv_img_dsc_t GIF_M4_320[M4_GIF_320_SIZE]; //显示页-320
// lv_img_dsc_t GIF_M4_341[M4_GIF_341_SIZE];    //显示页-341

void img_hash_table_init(img_hash_t *table, uint32_t table_size)
{
    for (uint32_t i = 0; i < table_size; ++i) //一一映射, 可变更设定
    {
        table[i].img = lv_img_table[i];
        table[i].file = File_Table.file[FLASH_IMG_START + i];
    }
}

static lv_img_dsc_t *lv_img_table[UI_IMG_MAX_NUM] =
    {
        //======================== 开机动画 Synwit_Logo ===========================//
        &GIF_Loading[0],
        &GIF_Loading[1],
        &GIF_Loading[2],
        &GIF_Loading[3],
        &GIF_Loading[4],
        &GIF_Loading[5],
        &GIF_Loading[6],
        &GIF_Loading[7],
        &GIF_Loading[8],
        &GIF_Loading[9],

        &IMG_Wallpaper, //背景

        //======================== PNG 图片生成 BIN ===========================//
        &Commit_Icon[0], //主页
        &Commit_Icon[1], //返回

        &Menu_Main[0], //首页logo
        &Menu_Main[1], // M0按前
        &Menu_Main[2], // M4按前
        &Menu_Main[3], //产品应用按前
        &Menu_Main[4], //图片演示按前

        &Menu_M0[0], // M0系列图标
        &Menu_M0[1],
        &Menu_M0[2],
        &Menu_M0[3],
        &Menu_M0[4],
        &Menu_M0[5],
        &Menu_M4[0], // M4系列图标
        &Menu_M4[1],

        &Menu_PP_Icon[0], //产品应用-左
        &Menu_PP_Icon[1], //素材缺失
        &Menu_PP_Icon[2], //产品应用-右

        //========================  全屏刷新·测试素材  ===========================//
        &Full_Scr_Img[0],
        &Full_Scr_Img[1],
        &Full_Scr_Img[2],
        &Full_Scr_Img[3],
        &Full_Scr_Img[4],
        &Full_Scr_Img[5],
        &Full_Scr_Img[6],
        &Full_Scr_Img[7],
        &Full_Scr_Img[8],
        &Full_Scr_Img[9],

        //========================  PD/PP GIF 素材  ===========================//
        //产品应用
        /* PD_1 ~ 14 .jpg */
        &GIF_PD[0],
        &GIF_PD[1],
        &GIF_PD[2],
        &GIF_PD[3],
        &GIF_PD[4],
        /*
        &GIF_PD[5],
        &GIF_PD[6],
        &GIF_PD[7],
        &GIF_PD[8],
        &GIF_PD[9],
        &GIF_PD[10],
        &GIF_PD[11],
        &GIF_PD[12],
        &GIF_PD[13],
        */

        /* 图片演示
        //喝水 1~6
        W001

        //跑步 1~17
        T001

        //弹琴 1~16
        &Menu_PP[0], M001

        //捧花的小女孩 2~32 //注意：本素材分辨率很大
        &Menu_PP[0], G002

        //周星驰 1~25
        &Menu_PP[0], Z001
        */
        //哈利波特 1~35
        &GIF_PP[0],
        &GIF_PP[1],
        &GIF_PP[2],
        &GIF_PP[3],
        &GIF_PP[4],
        &GIF_PP[5],
        &GIF_PP[6],
        &GIF_PP[7],
        &GIF_PP[8],
        &GIF_PP[9],

        //========================  芯片轮播 GIF 素材  ===========================//
//        &GIF_M0_160[0],  //宣传素材缺少
//        &GIF_M0_160[1],
//        &GIF_M0_160[2],
//        &GIF_M0_160[3],

        &GIF_M0_181[0], // 181
        &GIF_M0_181[1],
        &GIF_M0_181[2],
        &GIF_M0_181[3],

        &GIF_M0_190[0], // 190 / 19S
        &GIF_M0_190[1],
        &GIF_M0_190[2],
        &GIF_M0_190[3],

        &GIF_M0_201[0], // 201
        &GIF_M0_201[1],
        &GIF_M0_201[2],
//        &GIF_M0_201[3],

//        &GIF_M0_220[0],  //宣传素材缺少
//        &GIF_M0_220[1],
//        &GIF_M0_220[2],
//        &GIF_M0_220[3],

        &GIF_M0_260[0], // 260
        &GIF_M0_260[1],
        &GIF_M0_260[2],
//        &GIF_M0_260[3],

        &GIF_M4_320[0], // 32S/320
        &GIF_M4_320[1],
        &GIF_M4_320[2],

//        &GIF_M4_341[0],  //宣传素材缺少
//        &GIF_M4_341[1],
//        &GIF_M4_341[2],
};
